| 簡短描述 | |
|---|---|
|
File: \examples\Processing\Loop\RollingAverage\rollingAverage_Loop.vad |
|
|
預設平台: imaFlex CXP-12 Quad |
|
|
簡短說明 在不產生影格延遲的情況下,對連續影像串流執行移動平均 (rolling average) 的實作。 系統會計算最後 N 個單色影像的平均值,並用於以色彩將產生的差異視覺化,以對照至目前的影像。 用於建立平均值的影像數量設為 128,但可以修改。 |
|
此設計展示了移動平均的運作方式。 但核心元素是一個迴圈,它能解鎖更多的應用與機器視覺運作。 為了理解迴圈的運作方式以及如何實作,此範例是一個完美的起點。
系統會計算每個單一像素的平均值,並正規化為 8 bit 的輸入值範圍。 為此,每個接收到的影格都會與其先前的影格相加,並除以接收到的影格數量。 如果達到移動平均序列的長度,總和就會減去儲存且延遲的影格。 藉此,從第一張影像開始就會產生輸出影像。
在此設計中,兩個條件決定了移動平均序列的長度。 這兩個值都稱為 N_rolling,且必須設為相同的值。 一個處理相減影像的延遲儲存程序,另一個則處理像素值正規化。
運算子 RxImageLink 與 TxImageLink 用於啟用迴圈處理。 輸入影像序列的未正規化平均總和在一個迴圈中處理。 需要第二個迴圈處理來儲存輸入影格,以便稍後相減其值。 每個迴圈都必須與輸入的相機影格同步。 這會引進需要符合啟動條件的 SYNC 運算子。 啟動條件本身由 InsertImage 處理,其中第一次執行會引進單一的最小影格。 所使用的 SYNC 會將影格尺寸最大化至所需的值。
由於平均處理需要儲存一定數量的影格,因此使用了 ImageBufferMultiRoiDyn 運算子。 前幾張影像單純進行儲存,同時透過產生最小影格來滿足同步目的。
使用 VA 模擬將有助於詳細了解其繞過 SYNC 的運作方式。 一般而言,一系列的人工最小影格會執行同步。
實作了兩種不同的視覺化方法。第一種將產生 24 bit 的 RGB 影像,其中:
- 平面 - 內容
- 紅色 (RED) - 目前影像
- 綠色 (GREEN) - 平均影像
- 藍色 (BLUE) - 差異影像
第二種方法是以 HSL 色彩空間為基礎,隨後轉換為 24bit RGB:
- 平面 - 內容
- HUE / 色相角度 - 差異影像,其中最小值為綠色
- SATURATION - 設為最大值
- LIGHTNESS - 目前影像
第二種方法透過 EffectEnable = 1 開啟。 動態增益因子可用於對所有 Hue 色相角度進行差異 Scaling。

上一頁

